package main

import "fmt"

// main1 无缓冲通道
func main1() {
	ch := make(chan int)
	ch <- 10
	fmt.Println("发送成功")
}

// 无缓冲通道但是有接收，同步通道
func recv(c chan int) {
	ret := <-c
	fmt.Println("接收成功", ret)
}
func main2() {
	ch := make(chan int)
	go recv(ch) // 启用goroutine从通道接收值
	ch <- 10
	fmt.Println("发送成功")
}

// 有缓冲通道
func main() {
	ch := make(chan int, 1) // 创建一个容量为1的有缓冲区通道
	ch <- 10
	fmt.Println("发送成功")
}
